package com.cjm.one.service;

import com.cjm.one.common.result.Result;
import com.cjm.one.model.custom.dto.BindEmailDto;
import com.cjm.one.model.custom.dto.PasswordSetDto;
import com.cjm.one.model.custom.dto.PayPasswordSetDto;
import com.cjm.one.model.custom.entity.CustomerInfo;
import com.cjm.one.model.payment.BalanceDto;

import java.math.BigDecimal;

public interface CustomerInfoService {
    Result<Boolean> passwordSet(PasswordSetDto passwordSetDto);

    Result<Boolean> payPasswordSet(PayPasswordSetDto passwordSetDto);

    Result<String> bindEmailSet(BindEmailDto passwordSetDto);

    Result<CustomerInfo> updateCustomerInfo(CustomerInfo customerInfo);

    Result<Boolean> addBalance(BigDecimal value);

    Result<Long> pay(BalanceDto balanceDto);
}
